/**
 * 活动发布获取默认的时间
 */
export function getDefaultTime() {
  let defaultTime;
  let defaultTimeHour = new Date().getHours() + 1;
  if (defaultTimeHour < 10) {
    defaultTime = '0' + defaultTimeHour + ':00';
    return defaultTime;
  } else {
    defaultTime = defaultTimeHour + ':00';
    return defaultTime;
  }
}

/**
 * 生成日期时间字符串
 */
export function timeToStr(date, time) {
  let y = date.getFullYear();
  let m = date.getMonth() + 1;
  let d = date.getDate();

  return y + '-' + m + '-' + d + ' ' + time;
}

/**
 * 分开日期时间
 */
export function cutDateTime(dateTime) {
  let date = dateTime.split(' ')[0];
  let time = dateTime.split(' ')[1];

  return {
    date: new Date(date),
    time: time.slice(0, 5)
  };
}

/**
 * 将日期时间转化为中文日期格式
 */
export function timeToZNCHStr(dateTime) {
  let date = dateTime.split(' ')[0];
  let time = dateTime.split(' ')[1];
  let arr = date.split('-');
  let y = arr[0];
  let m = arr[1];
  let d = arr[2];
  let str;
  let h = time.slice(0,2);

  if (h > 0 && h < 3) {
    str = '拂晓';
  } else if (h >= 3 && h < 6) {
    str = '黎明';
  } else if (h >= 6 && h < 9) {
    str = '清晨';
  } else if (h >= 9 && h < 12) {
    str = '上午';
  } else if (h >= 12 && h < 15) {
    str = '中午';
  } else if (h >= 15 && h < 18) {
    str = '下午';
  } else if (h >= 18 && h < 21) {
    str = '傍晚';
  } else {
    str = '晚上';
  }

  return y + '年' + m + '月' + d + '日' + ' ' + str + time;
}

/**
 * 去除字符串中的中文字符
 */
export function cutZNCH(str) {
  let regex = new RegExp(/[\u4E00-\u9FA5\uF900-\uFA2D]/);
  let result = '';

  for (let i = 0; i <= str.length; i++) {
    let c = str.substring(i, i + 1);

    if (!regex.test(c)) {
      result += str.charAt(i);
    }
  }
}

/**
 * 生日日期转换
 */
export function dateFormat(date) {
  let y = date.getFullYear();
  let m = date.getMonth() + 1;
  let d = date.getDate();

  return y + '-' + m + '-' + d;
};

//! 封装moment.js方法
import newMoment from 'moment';

newMoment.locale('zh-cn');

export const moment = newMoment;

//! 为DateDicker引入中文日期
import areIntlLocalesSupported from 'intl-locales-supported';
// 引入中文日期
export var DateTimeFormat;

if (areIntlLocalesSupported(['zh'])) {
  DateTimeFormat = global.Intl.DateTimeFormat;
} else {
  const IntlPolyfill = require('intl');
  DateTimeFormat = IntlPolyfill.DateTimeFormat;
  require('intl/locale-data/jsonp/zh');
}
